Grid 5000 : 5 000 processeurs pour la recherche
Fin 2003, la France s’engageait dans un vaste programme de recherche sur les grilles de calculs : Grid 5000. Thierry Priol, le directeur de l’organisme de concertation ACI GRID chargé de la supervision du projet, en explique les grands enjeux.
Depuis le lancement du programme de recherche SETI@Home (voir édition du 30 octobre 2000), les scientifiques explorent de nouvelles voies dans le domaine des calculs partagés. Une véritable rupture dans la recherche est en train d’intervenir : les charges de calculs complexes tendent à être réalisé sur des grappes (des dizaines, centaines, voire milliers de machines interconnectées sur un même site). Le cluster de G5 de l’Université de Virginie (voir édition du 4 septembre 2003), qui présente actuellement le meilleur rapport coût/performances, fait partie de cette catégorie. Mais on s’oriente également vers l’interconnexion de clusters pour résoudre simultanément des équations particulièrement complexes. Ce type de fonctionnement en grille de calcul (grid computing en anglais) est très prometteur. La France s’est dotée de son propre programme de recherche, intitulé Grid 5000, qui entend réunir les capacités de calculs de 5 000 processeurs répartis sur dix sites dans toute la France. Thierry Priol, le directeur d’ACI Grid, l’organisme de concertation destiné à favoriser la mise en commun de ressources, nous a détaillé les objectifs de ce programme.Vnunet Le monde du calcul haute performance est en pleine évolution. En France, ACI GRID, sous l’égide du ministère de la recherche, s’appuie sur Grid 5000. De quoi s’agit-il ? Thierry Priol C’est un projet de recherche incitatif sur les grilles de calculs. L’enjeu consiste à faire travailler des ressources dispersées géographiquement. Il ne s’agit pas d’une mince affaire car si on maîtrise assez bien la mise en parallèle de machines sur un réseau local, l’opération est beaucoup plus difficile à réaliser quand les machines sont éloignées géographiquement. Pour vous donner un ordre d’idée, nous allons actuellement équiper cinq sites de recherche situés à Bordeaux, Sophia-Antipolis, Toulouse, Lyon et Rennes. Deux autres centres de recherche à Grenoble et Orsay participent également au programme. Le gros enjeu de cette grille est donc l’interconnexion des clusters dont doivent être dotés ces centres. Nous devons trouver la meilleure approche dans de nombreux domaines : configuration, hétérogénéité des machines, interconnexions…Vnunet Pourquoi vouloir interconnecter ces grappes d’ordinateurs parfois distants de centaines de kilomètres ? T. P. L’intérêt d’une grille de calcul est tout d’abord de permettre aux scientifiques de disposer d’une puissance supérieure de calcul, mais surtout de pouvoir combiner au sein de simulations plusieurs codes de calculs. Dans les domaines qui nous préoccupent – par exemple les simulations aéronautiques ou la météorologie – les algorithmes sont souvent confidentiels. Avec une grille, on peut réaliser du couplage de code sans compromettre cette confidentialité. Pour la science, cette combinaison permet d’atteindre de nouveaux niveaux de recherche encore plus poussés.Vnunet Quelles sont les principales difficultés auxquelles ce type de recherche peut se trouver confronté ? T. P. Il y a déjà la question de l’équipement : étant des établissements publics, nous sommes sur des marchés relativement contraints. Le rôle d’ACI GRID sur Grid 5 000 est donc incitatif. Nous ne finançons pas tout, les centres de recherche qui se lancent dans l’aventure doivent trouver des financements publics locaux. Certains sites profitent par exemple d’un soutien assez fort des régions. Côté technique, nous nous retrouvons confrontés à trois goulets d’étranglement principaux : l’administration de la grille, le fonctionnement des programmes et la question des communications. Aujourd’hui, il existe des services de grilles qui vont être intégrés à la norme des services Web et avec lesquels Grid 5000 sera interopérable. Côté applications, nous travaillons depuis 2001 à revoir leurs méthodes de conception pour utiliser un code parallèle qui fonctionnera sur une grille. C’est difficile car le fonctionnement est très chaotique sur un réseau Internet. Sur un cluster, on peut, pendant que les machines communiquent, faire réaliser des calculs aux processeurs. Ce n’est pas le cas sur une grille. Il faut prendre en compte les tolérances aux défaillances, la latence du réseau… Pour contourner ces problèmes, nous travaillons par exemple à des algorithmes qui s’auto-configurent en fonction du réseau.Vnunet Des configurations spécifiques sont-elles nécessaires pour vos travaux ? T. P. Nous allons utiliser un parc de machines dont les deux tiers seront homogènes et un tiers hétérogène : des grappes d’ordinateurs utilisant des processeurs 64 bits. Nous devons utiliser cette génération de processeurs car certains de nos projets nécessitent un type d’adressage mémoire particulier. Nous sommes donc en train d’étudier les trois architectures du marché : AMD, Intel et Apple/IBM, dans le but d’équiper une dizaine de sites qui comprendront chacun des clusters de 250 noeuds. Chaque noeud comptera deux processeurs. Au total, il s’agit donc de disposer de 2 500 machines biprocesseurs. Certains sites sont déjà équipés de clusters, c’est le cas de l’IRISA (Institut de Recherche en Informatique et Systèmes Aléatoires, Ndlr) à Rennes, qui dispose de trois grappes. Outre un cluster de G4, que nous trouvons plutôt bien, nous disposons également de clusters de biprocesseurs Xeon à 2,4 GHz tournant sous Linux. Une fois que nous disposerons de ces équipements, commenceront les expérimentations grandeur nature. Et là, tout reste à faire : études de performances, systèmes distribués, architectures logicielles… Il y a un réel besoin.